package model

import (
	"time"
)

type User struct {
	Id        int32     `gorm:"column:id;type:int;primaryKey;not null;" json:"id"`
	NikeName  string    `gorm:"column:nike_name;type:varchar(25);comment:用户昵称;not null;" json:"nike_name"`                                // 用户昵称
	TiktokId  int32     `gorm:"column:tiktok_id;type:int;comment:抖音ID;not null;" json:"tiktok_id"`                                          // 抖音ID
	Notes     string    `gorm:"column:notes;type:varchar(250);comment:用户备注;default:NULL;" json:"notes"`                                   // 用户备注
	Address   string    `gorm:"column:address;type:varchar(250);comment:用户地址;not null;" json:"address"`                                   // 用户地址
	Mobile    string    `gorm:"column:mobile;type:char(11);comment:手机号;not null;" json:"mobile"`                                           // 手机号
	Follow    int32     `gorm:"column:follow;type:int;comment:用户关注;not null;default:1;" json:"follow"`                                    // 用户关注
	Fans      int32     `gorm:"column:fans;type:int;comment:用户粉丝;not null;" json:"fans"`                                                  // 用户粉丝
	GetLikes  int32     `gorm:"column:get_likes;type:int;comment:用户获赞;not null;" json:"get_likes"`                                        // 用户获赞
	Work      string    `gorm:"column:work;type:varchar(255);comment:用户作品;default:NULL;" json:"work"`                                     // 用户作品
	Password  string    `gorm:"column:password;type:varchar(30);comment:用户密码;not null;" json:"password"`                                  // 用户密码
	CreatedAt time.Time `gorm:"column:created_at;type:datetime(3);comment:创建时间;not null;default:CURRENT_TIMESTAMP(3);" json:"created_at"` // 创建时间
	UpdatedAt time.Time `gorm:"column:updated_at;type:datetime(3);comment:更新时间;not null;default:CURRENT_TIMESTAMP(3);" json:"updated_at"` // 更新时间
	DeletedAt time.Time `gorm:"column:deleted_at;type:datetime(3);comment:删除时间;default:NULL;" json:"deleted_at"`                          // 删除时间
}

func (u *User) TableName() string {
	return "user"
}
